// pages/product_detail/product_detail.js
const app = getApp();
const AV = require('../../utils/av-weapp-min.js');
Page({

  /**
   * 页面的初始数据
   */
  data: {
    detail: {},
    imgs: [],
    pictures: ["../../images/icon_1.png",
      "../../images/icon_2.png"
    ], //放置报名人 头像图片
    timePrice: null,
    latitude: "23.1308",
    longitude: "113.401962",
    isable: true, //是否已经报名满了
    isfromMyproduct: true, //是否显示报名人头像 只有从‘我发起的寻铺’进入才能显示 即发起人 才能看到并处理
    publishState: 1, //展示状态 0 下架 1上架
    btnText: "我要报名",
    markers: [{
      iconPath: "../../images/position_marker.png",
      id: 0,
      latitude: 23.1308,
      longitude: 113.401962,
      width: 32,
      height: 32
    }]
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function(options) {
    console.log(app.globalData.productDetail);
    this.setData({
      detail: app.globalData.productDetail,
      imgs: app.globalData.productDetail.attributes.feedImages,
    });

    var that = this
    var src = options.src

    if (src == 'myproduct') {
      that.setData({
        isfromMyproduct: true
      })
    } else {
      that.setData({
        isfromMyproduct: false
      })
    }

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function() {
    this.checkJoin();
    this.checkDisable();
  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function() {

  },
  onCollect: function() {
    wx.showToast({
      title: 'onCollect',
    });
  },
  onContact: function() {
    wx.showToast("onContact");
  },
  onJoin: function(e) { //用户参与
    let lcUser = AV.User.current();

    if (null != lcUser && null != this.data.detail) {
      let has = false;
      for (let i = 0; i < this.data.detail.attributes.participants.length; i++) {
        if (lcUser.id == this.data.detail.attributes.participants[i]) {
          has = true;
        }
      }
      if (has) {
        wx.showToast({
          title: '已参加',
        });
      } else {
        this.data.detail.attributes.participants.push(lcUser.id);
        wx.showLoading({
          title: '请等待',
        });
        // 第一个参数是 className，第二个参数是 objectId
        var todo = AV.Object.createWithoutData('feeds', this.data.detail.id);
        // 修改属性
        todo.set('participants', this.data.detail.attributes.participants);
        // 保存到云端
        todo.save().then(function(result) {
          wx.hideLoading();
          console.log('objectId is ' + result);
          this.setData({
            btnText: "已经报名"
          });
          wx.showToast({
            title: '发起者查看你的资料觉得符合条件的话，可能给你致电哦~',
            icon: 'none',
            duration: 1500
          })
        }, function(error) {
          wx.hideLoading();
          delete this.data.detail.attributes.participants[lcUser.id];
          console.error(error);
        });
      }
    }
  },
  checkJoin: function() {
    let lcUser = AV.User.current();

    if (null != lcUser && null != this.data.detail) {
      let has = false;
      for (let i = 0; i < this.data.detail.attributes.participants.length; i++) {
        if (lcUser.id == this.data.detail.attributes.participants[i]) {
          has = true;
        }
      }
      if (has) {
        this.setData({
          btnText: "已经报名",
          isabe: true
        });
      } else {
        this.setData({
          btnText: "我要报名"
        });
      }
    }
  },
  checkDisable: function() {
    if (this.data.detail && this.data.detail.attributes.participants) {
      if (this.data.detail.attributes.count > this.data.detail.attributes.participants.length) {
        this.setData({
          isable: true
        });
      }
    }
  },

  doPublish: function (e) {
    var that = this
    if (this.data.publishState == 0) {
      wx.showModal({
        title: '提示',
        content: '是否确定上架？上架后其他用户可以看到你发布的本条信息',
        success: function (res) {
          if (res.confirm) {
            //执行上架工作
            that.setData({
              publishState: 1,
            });
            //console.log('用户点击确定')
          } else {
            //console.log('用户点击取消')
          }
        }
      })
    } else {
      wx.showModal({
        title: '提示',
        content: '是否确定下架？下架后其他用户将看不到你发布的本条信息',
        success: function (res) {
          if (res.confirm) {
            //执行上架工作
            that.setData({
              publishState: 0,
            });
            //console.log('用户点击确定')
          } else {
            //console.log('用户点击取消')
          }
        }
      })
    }
  },

  doJumpUserInfo: function (e) {
    //跳转到发布页面后 读取本地数据 让已填写的数据显示出来
    wx.navigateTo({
      url: '../others_info/others_info',
    })
  },
})